home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
TPUG - Toronto PET Users Group
/
TPUG Users Group CD
/
TPUG Users Group CD.iso
/
TPUG Xtras
/
Xtras
/
termprog.d64
/
terminal.64
(
.txt
)
< prev
next >
Wrap
Commodore BASIC
|
2009-02-04
|
4KB
|
129 lines
50 REM" TERM.64 WRITTEN BY STEVE PUNTER CONVERTED TO 64 BY KEITH PETERSON
100 [139][194](22784)[179][177]76[167][147]"TERM.64",8,1
103 R%[178]5:MO%[178]6:SE$[178]"":ML[178]22784
106 [151]56,86:[151]644,86:[156]:[159]5,2,0,[199](6)[170][199](0)
110 RE$[178]" ":SE$[178]" ":MO%[178]134:R%[178]0:C$[178]"0123456789ABCDEF"
115 RP[178]2:RS[178]0:WP[178]RP:WS[178]RS
120 [151]24575,RP:[151]24574,RS[170]96:[151]24573,WP:[151]24572,WS[170]96
125 PA(0)[178]10:PA(1)[178]6:PA(2)[178]2
130 ML[178]22784:[153][199](14):[151]24569,0
135 [159]1,8,15:[151]556,0:[151]552,0:[151]553,1
140 DN$[178]"":[137]150
145 [161]#5,A$,A$:[158]ML[170]0:[160]11:[151]24569,0:TM[178]0:[137]106
150 [153]"LOADASCUNCTION:"
155 [153]"1 - (null)ERMINAL (null)ODE"
160 [153]"2 - (null)ECEIVE PROGRAM"
165 [153]"3 - (null)RANSMIT PROGRAM"
170 [143] PRINT"4 - (null)PEN STR$ISK ASCILE"
175 [143] PRINT"5 - (null)RINT STR$ISK ASCILE"
185 [153]"4 - (null)UIT"
190 [161]A$:[139]A$[178]""[167]190
195 [145][197](A$)[137]145,500,670,765:[143] 205,230,765
200 [137]190
205 [160]11:[153]"(null)AME OF STR$ISK ASCILE":[153]"STR$EFAULT IS STR$RIVE 0?
210 PRINT">";:GOSUB800:IFB$=""THEN150
215 IFMID$(B$,2,1)<>":"THENB$="1:"+B$
220 OPEN11,8,11,"@"+B$+",S,W":GOSUB835:IFESTHENPRINTES$:GOTO205
225 POKE24569,1:GOTO150
230 PRINT"[206]AME OF [198]ILE?":PRINT">";:GOSUB800:IFB$=""THEN150
235 CLOSE11:OPEN11,8,11,B$:GOSUB835:IFESTHENPRINTES$:GOTO230
240 PRINT"[193]SCII OR [195]BM [212]YPE [207]UTPUT?":PRINT">";:POKE555,0
245 GETA$:IFA$=""THEN245
250 IFA$=CHR$(13)THEN150
255 IFA$="A"THENPOKE555,0:GOTO265
260 IFA$<>"C"THEN245
265 PRINTCHR$(ASC(A$)OR128)"":SYSML+3:CLOSE11:GOTO150
390 GOSUB425:A=PEEK(553):A=A+1:IFA=2THENA=0
395 POKE553,A:GOTO315
400 GOSUB425:PA=PA+1:IFPA=3THENPA=0
405 POKE660,(PA(PA)ORDU)*16+1:GOTO315
410 GOSUB425:DU=DU+1:IFDU=2THENDU=0
415 POKE660,(PA(PA)ORDU)*16+1:GOTO315
420 A$=" [146]":GOTO430
425 A$=" "
430 PRINT" ";LEFT$(DN$,PEEK(553));A$
435 PRINT" ";LEFT$(DN$,PA);A$
440 PRINT" ";LEFT$(DN$,DU);A$:RETURN
445 A$=" [146]":GOTO455
450 A$=" "
455 PRINT" ";LEFT$(DN$,BR);A$
460 PRINT" ";LEFT$(DN$,SB);A$
465 PRINT" ";LEFT$(DN$,WL);A$:RETURN
470 GOSUB450:BR=BR+1:IFBR=3THENBR=0
475 POKE659,((SB*8)OR(2*WL)OR1)*16+(BR+6):GOTO370
480 GOSUB450:SB=SB+1:IFSB=2THENSB=0
485 POKE659,((SB*8)OR(2*WL)OR1)*16+(BR+6):GOTO370
490 GOSUB450:WL=WL+1:IFWL=2THENWL=0
495 POKE659,((SB*8)OR(2*WL)OR1)*16+(BR+6):GOTO370
500 REM RECEIVE A PROGRAM
505 PRINT"[206]AME OF [198]ILE?"
510 PRINT"[196]EFAULT DRIVE IS #0":PRINT">";:GOSUB800:S$=B$
515 IFS$=""THENPRINT#5,"A";:GOTO145
520 IFMID$(S$,2,1)<>":"THENS$="0:"+S$
525 GOSUB625:S$="@"+S$+T$+",W"
530 CLOSE2:OPEN2,8,2,S$:GOSUB835:IFESTHENPRINTES$:CLOSE2:GOTO505
535 PRINT#5,"TTTTTTTTTT";
545 FORX=0TO10:NEXT:GET#5,A$:IFST=0THEN545
546 SYSML+18:IFSTTHEN570
550 FORX=0TO10:NEXT:GET#5,A$:IFST=0THEN550
555 S1=PEEK(ML-2):S2=PEEK(ML-1):SYSML+12
560 IFS1<>PEEK(ML-2)ORS2<>PEEK(ML-1)THEN575
565 SYSML+15:PRINT#5,"";:PRINT"-";:GOTO545
570 CLOSE2:PRINT#5,"SSSSSSSSSS";:PRINT:GOTO145
575 PRINT#5,"";:PRINT":";:GOTO545
580 PRINT"[212]YPE OF [198]ILE:"
585 PRINT"([208])ROGRAM, ([215])ORD[208]RO, OR ([211])EQ?":PRINT">";
590 GETB$:IFB$=""THEN590
595 TY$=B$:FL=0
600 IFB$="P"THENT$=",P":POKE557,0:PRINT"[208]ROGRAM":RETURN
605 IFB$="S"THENT$=",S":POKE557,0:PRINT"[211][197][209]":RETURN
610 IFB$="W"THENT$=",P":POKE557,1:PRINT"[215]ORD[208]RO":RETURN
615 IFB$=CHR$(13)THENFL=1:RETURN
620 GOTO590
625 PRINT#5,"UUUUUUUUUU";
630 GET#5,A$:IFST<>0THEN630
635 IFA$="P"THENT$=",P":POKE557,0:A$="[208]ROGRAM":GOTO655
640 IFA$="S"THENT$=",S":POKE557,0:A$="[211][197][209]":GOTO655
645 IFA$="W"THENT$=",P":POKE557,1:A$="[215]ORD[208]RO":GOTO655
650 GOTO630
655 PRINT"[198]ILE [212]YPE: "A$""
660 GET#5,A$:IFST=0THEN660
665 RETURN
670 REM SEND AN SEQ FILE TO BULLETIN BOARD
675 PRINT"[206]AME OF [198]ILE TO [211]END?":PRINT">";:GOSUB800:S$=B$
680 IFS$=""THENPRINT#5,"A";:GOTO145
685 GOSUB580:IFFLTHENS$="":GOTO680
690 CLOSE2:OPEN2,8,2,S$+T$:GOSUB835:IFESTHENPRINTES$:CLOSE2:GOTO675
695 FORX=1TO10:PRINT#5,TY$;:NEXTX:PRINT
700 GET#5,A$:IFST<>0ORA$<>"U"THEN700
702 GET#5,A$:IFPEEK(667)<>PEEK(668)THEN702
705 SYSML+9:CK=ST
710 FORX=1TO400:NEXT:REM DELAY LOOP
715 GET#5,A$:IFPEEK(667)<>PEEK(668)THEN715
720 FORT=0TO255:PRINT#5,CHR$(PEEK(ML-256+T));:NEXTT
725 PRINT#5,"ZZZZZZZZZZZZZZZ";
727 IFPEEK(669)<>PEEK(670)THEN727
730 GET#5,A$:IFST<>0THEN730
735 IFA$=""THENPRINT":";:GOTO710
740 IFA$<>""THEN730
745 IFCK=0THENPRINT"-";:GOTO702
750 GET#5,A$:IFPEEK(667)<>PEEK(668)THEN750
755 CLOSE2:GOTO145
760 SYSML+21:A$=CHR$(PEEK(634)):RETURN
765 REM QUIT TERMINAL
790 CLOSE5:CLOSE1:CLOSE2:CLOSE11
792 PRINTCHR$(9)
795 END
800 PRINT" [146][157]";:B$=""
805 GETA$:IFA$=""THEN805
810 IFA$=CHR$(20)THEN825
815 IFA$=CHR$(13)THENPRINT" ":RETURN
820 B$=B$+A$:PRINT" [157]"A$" [146][157]";:GOTO805
825 IFLEN(B$)=0THEN805
830 B$=LEFT$(B$,LEN(B$)-1):PRINTA$;:GOTO805
835 REM GET ERROR CHANNEL
840 INPUT#1,E1$,E2$,E3$,E4$
845 ES$=E1$+","+E2$+","+E3$+","+E4$
850 ES=VAL(E1$):RETURN
1000 POKE22784,0:RUN